Function is
● block of code
● that accepts Input Parameters
● and returns a single value
In Kotlin Function can be declared using following Programming Syntaxes
● Lambda Expression declares Anonymous Function (Function that has no Name)
● Function Declaration declares Named Function (Function that has a Name)
Closure is Object that is create when Function needs to be returned or used as Input Parameter of another Function
● has a single Method
● has Properties which are all referenced from that Method and contains current Values of outer Variables